Autonomous Interpretation of Rock Drill Cuttings

ABSTRACT

A computer-implemented method that autonomously performs rock drill cuttings interpretation is described herein. The method includes obtaining rock drill cuttings representations. The method also includes preprocessing the rock drill cuttings representations. The method also includes performing unsupervised image segmentation in order to obtain masked representations of such images discriminating rock types. The method also includes performing supervised learning through a custom Convolutional Neuronal Network using the segmented pictures as inputs and a continuous or discrete mineralogical or sedimentological variable of interest as the output. Additionally, the method includes autonomously predicting such mineralogical or sedimentological quantity from new rock drill cuttings pictures using the parameters of the unsupervised segmentation and the trained supervised model created for this purpose.

TECHNICAL FIELD

This disclosure relates generally to drill cuttings interpretation.

BACKGROUND

Drilling processes typically generate rock drill cuttings via a drillbit positioned at the end of a drill string. The drill bit contacts acutting face of a geological formation to create a wellbore. Contactwith the cutting face creates rock drill cuttings. To move the rockdrill cuttings to the surface, a drilling fluid is circulated down thewellbore, through the drill string and drill bit, and then up thebackside annulus out of the wellbore. Interpretation of the rock drillcuttings provides information on the corresponding geological formation.

SUMMARY

An embodiment described herein provides a method for autonomousinterpretation of rock drill cuttings. The method includes obtaining,with one or more hardware processors, rock drill cuttingsrepresentations. The method also includes preprocessing, with the one ormore hardware processors, the rock drill cuttings representations byapplying at least one transformation to the rock drill cuttingsrepresentations. Further, the method includes segmenting, with the oneor more hardware processors, the preprocessed rock drill cuttingsrepresentations into segmented pictures by inputting the preprocessedrock drill cuttings representations into a first machine learning modelthat outputs the segmented pictures, wherein the segmented pictures aremasked images that include at least one rock type. Additionally, themethod includes predicting, with the one or more hardware processors,depth indexed mineralogical or sedimentological data using the segmentedpictures input to a trained second machine learning model.

An embodiment described herein provides an apparatus comprising anon-transitory, computer readable, storage medium that storesinstructions that, when executed by at least one processor, cause the atleast one processor to perform operations. The operations includepreprocessing rock drill cuttings representations by applying at leastone transformation to the rock drill cuttings representations. Theoperations also include segmenting the preprocessed rock drill cuttingsrepresentations into segmented pictures by inputting the preprocessedrock drill cuttings representations into a first machine learning modelthat outputs segmented pictures, wherein the segmented pictures aremasked images that include at least one rock type. Additionally, theoperations include predicting depth indexed mineralogical orsedimentological data using the segmented pictures input to a trainedsecond machine learning model.

An embodiment described herein provides a system. The system comprisesone or more memory modules and one or more hardware processorscommunicably coupled to the one or more memory modules. The one or morehardware processors is configured to execute instructions stored on theone or more memory models to perform operations. The operations includepreprocessing the rock drill cuttings representations by applying atleast one transformation to the rock drill cuttings representations. Theoperations also include segmenting the preprocessed rock drill cuttingsrepresentations into segmented pictures by inputting the preprocessedrock drill cuttings representations into a first machine learning modelthat outputs segmented pictures, wherein the segmented pictures aremasked images that include at least one rock type. Additionally, theoperations include predicting depth indexed mineralogical orsedimentological data using the segmented pictures input to a trainedsecond machine learning model.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 shows an acquisition subsystem.

FIG. 2 shows a software subsystem.

FIG. 3 shows model training of a machine learning model.

FIG. 4 shows a model deployment of trained machine learning models.

FIG. 5 shows a comparison of autonomous rock drill cuttingsinterpretation and human interpretation.

FIG. 6 is a process flow diagram of a process that enables autonomousrock drill cuttings interpretation

FIG. 7 is a schematic illustration of an example controller (or controlsystem) for autonomous rock drill cuttings interpretation according tothe present disclosure.

DETAILED DESCRIPTION

Rock drill cuttings, also referred to as drill cuttings or cuttings, areproduced as rock is broken by a drill bit advancing through the rock orsoil to create a wellbore. In examples, the cuttings are pieces of rockthat are chipped away at a cutting face of a geological formation by thedrill bit while the wellbore is drilled. Drilling fluid is pumpedthrough a drill string coupled with the drill bit. The drilling fluidexits through jets in the drill bit and carries the cuttings through thehole and up to the surface. The cuttings are carried to the surface bydrilling fluid circulating up from the drill bit. Equipment, such as ashaker, is used to separate the cuttings and fluid. A size of cuttingsproduced during drilling is based on, at least in part, the geologicmaterial being drilled and the drill bit used. In examples, the cuttingsare of any size. In some examples, the drilling fluid is collected atthe surface in a containment system or pit.

The cuttings are interpreted to determine characteristics of the rockbeing drilled. Interpretation of the rock includes, for example, adetermination of the facies, mineralogy of the sample, or other customcategories of interest. In examples, cuttings provide information on thelithology of the rock being drilled, the mineral composition, andhydrocarbon quality measurements. Traditional interpretation of rockdrill cuttings is labor-intensive and requires continuous attention andthe frequent repetition of a task by a highly qualified professionalthat has extensive training for drill cuttings interpretation. Humaninterpreters are known to give different interpretations of the samerock, resulting in inconsistent assessments of rocks not only betweenwells, but also for the same well, as interpretation work by humans iscarried out by multiple people, in shifts. Traditionally geologists workin shifts for hydrocarbon development and exploratory wells and canproduce inconsistent assessment of drill cuttings.

Embodiments described herein enable autonomous interpretation of rockdrill cuttings. The present techniques autonomously interpret rock drillcuttings images and video. Rock drill cuttings are produced by theaction of drilling a wellbore, and are brought up to surfacecontinuously by the recirculation of drilling mud fluids along theannulus. Rock drill cuttings provide invaluable information about thenature and properties of the targeted rocks. The present techniquesimprove the traditional practice of human interpretation of rock drillcuttings, which is prone to human bias, labor-intensive, and expensive.The present techniques enable a consolidated, centralized, fast, andinexpensive interpretation of rock drill cuttings. Further, the presenttechniques reduce costs through automating cuttings interpretation whilesimultaneously increasing the usability and accuracy of theinterpretation through consolidation. In examples, the presenttechniques are applied to stored rock drill cuttings. For example, rockcuttings collected during drilling are stored. The stored rock cuttingsare digitized (e.g., images or video of the stored cuttings is captured)and interpreted via autonomous interpretation of rock drill cuttings.

In some embodiments, the present techniques enable an autonomous rockdrill cuttings interpretation system. The autonomous rock drill cuttingsinterpretation system includes an acquisition subsystem and a softwaresubsystem. The acquisition subsystem generates cuttings representations,such as images or video. In examples, an image is a microscope image. Avideo is a sequence of frames. The software subsystem receives as inputthe image and/or video, and outputs a mineralogical and sedimentologicalinterpretation of the rock drill cuttings portrayed in the video and/orimages. In some embodiments, machine learning models are trained topreprocess drill cuttings representations, segment drill cuttingsrepresentations, and output mineralogical or sedimentological data basedon the drill cuttings.

In some embodiments, once at least one machine learning model is trainedusing training data from wellbores in an area, zone, and/or geologicalformation of interest, the present techniques autonomously interpretrock drill cuttings representations (e.g., images or video) in realtime. Mineralogical or sedimentological data is predicted for otherwellbores in the predetermined area, zone, or geological formation inreal time. Autonomous interpretation of rock drill cuttings removes theneed to have trained geologists working on-site and on shifts to performrock drill cuttings interpretation. Further, the present techniquesreduce costs and deliver consistent and comparable interpretationsacross multiple wellbores and within each individual wellbore acrossmultiple geological units. In examples, a mineralogical interpretationof the drill cuttings images produced at a wellbore is autonomouslydeployed in real time, utilizing for this purpose a machine learningmodel previously trained on data obtained from a nearby wellbore wherethe desired mineralogical information was measured. In some embodiments,a machine-learning model trained on drill cuttings images sourced frommultiple wellbores is utilized to autonomously deliver a consistentmineralogical description across other multiple wellbores.

In some embodiments, a machine learning model is trained to predictquanitites a human interpreter may not be trained to describe from rockdrill cuttings images, such as algorithmically-built discrete orcontinuous descriptors associated with a particular well, formation, orplay. In some embodiments, the predictions made by the trained machinelearning models are auditable, and the model themselves can be perfected(e.g., updated, retrained) after-the-fact and re-applied to the samerock drill cuttings images.

FIG. 1 shows an acquisition subsystem. FIG. 2 shows a softwaresubsystem. In some embodiments, an autonomous rock drill cuttingsinterpretation system includes an acquisition subsystem (e.g., FIG. 1 ),which captures image and/or video recordings of rock drill cuttings, anda software subsystem (e.g., FIG. 2 ), which analyzes the image and/orvideo recorded and delivers a mineralogical and sedimentologicalinterpretation of the rock drill cuttings portrayed in the video and/orimages.

Referring to FIG. 1 , an acquisition subsystem 100 is shown. Theacquisition subsystem can be of two types. A first acquisition subsystem100 is a continuous acquisition system 110 and a second acquisitionsubsystem 100 is a manual microscope system 120. In the continuousacquisition system 110, rock drill cuttings representations 112 areobtained while drilling, in real time. For example, a capture mechanism114 is used to capture rock drill cuttings representations 112 while thecuttings travel on a belt 116. In examples, the capture mechanism is ahigh definition digital video recorder or digital camera. The belt 116transports cuttings that from shakers. In examples, the shakers areshale shakers. Shakers are the first phase of a solids control system ona drilling rig and are used to remove large solids (cuttings) from thedrilling fluid (“mud”). In examples, the cuttings are cleaned in anautomated process using shakers.

In some embodiments, the rock drill cuttings representations 112 are avideo (e.g., a sequence of frames) that is obtained from live continuouswhile-drilling video recordings. In some embodiments, the rock drillcuttings representations 112 are images (e.g., digital pictures) of therock drill cuttings produced by the action of drilling the well obtainedat periodic intervals. In embodiments, each video frame or image isindexed to the depth at which the observed cuttings are produced.

The continuous acquisition system 110 is fully autonomous. The drillcuttings representations are captured automatically by the continuousacquisition system 110, without human intervention. In examples, videoframes are captured continuously as rock drill cuttings generated by theaction of drilling the well, are taken from the shale shakers through ahose, automatically cleaned, and mounted on a secondary conveyor belt116 for image capture or video recording.

The second acquisition subsystem 100 is a manual microscope system 120.In the manual microscope system 120, rock drill cuttings representations122 are microscope images captured using a microscope 124. In examples,the microscope images are manually selected, and images of prepared rockdrill cuttings samples are captured and indexed to the specific depthfrom which each sample is produced as shown at reference number 126. Insome embodiments, a person selects samples from the shale shakers atconsistent drilled depth intervals, prepares the samples, and takesmicroscope pictures of the samples. In examples, the microscope imagesare simple magnified pictures of cleaned, raw, drill cuttings. Themicroscope images are distinguished from thin sections. To obtain a thinsection, a single rock cutting is finely cut and polished as to exposeits virgin state. In some cases, the single rock cutting is preserved ingraphite, glass, or other materials. Thus, the preparation of thinsection images is costly when compared to microscope images.Additionally, thin section images are not acquired in pseudo real-time.

Using the manual microscope system 120, samples are acquired, prepared,and the microscope images of the samples are captured in a standardizedmanner. In examples, the standardized manner refers to a samemagnification applied to each sample when capturing the microscopepictures. In examples, a machine learning model is trained using imagesacquired with the same, standard, magnification. When deploying thetrained machine learning model, the input images are captured at thesame magnification applied to images used to train the machine learningmodel. For example, the samples are magnified to twenty times (e.g.,20X) larger than the original sample. In examples, the standardizationalso refers to capturing images of the samples with a same light setup.In the absence of a same light setup, histogram normalization is used tonormalize a color of the images as described below.

The acquisition subsystem 100 accumulates enough training data to buildand validate a machine learning model for a predetermined area, such asa zone, field, and/or formations of interest. The training data is usedduring machine learning model training and validation (e.g., 230 of FIG.2 ). Upon deployment of the trained machine learning models, theacquisition subsystem 100 captures drill cuttings representations. Thedrill cuttings representations are interpreted in real time using thedeployed, trained machine learning model. In this manner, the drillcuttings representations are autonomously interpreted.

FIG. 2 shows a software subsystem 200. The software subsystem 200includes three subsystems: a preprocessing subsystem 210, a modeltraining and validation subsystem 230, and model deployment workflow250. The preprocessing subsystem 210 enhances and normalizes rock drillcuttings representations. In examples, the rock drill cuttingsrepresentations are prepared for either the model training andvalidation subsystem 230 or the deployment subsystem 250. In someembodiments, the rock drill cuttings representation is video that ispre-processed using workflow 212. In some embodiments, the rock drillcuttings representation is one or more images that are pre-processedusing workflow 220.

In the video preprocessing workflow 212, frame-to-wellbore depthindexing 214 is performed. In frame-to-wellbore depth indexing 214,timestamps corresponding to each respective frame of video are mapped toa drilling bit depth. The mapping accounts for the time lag that ittakes cuttings to travel from the depth of a drilling location (e.g.,where the cuttings are generated, a bottom of the wellbore) to thecleaned cuttings belt (e.g., at the surface). This produces a uniqueindexing of each frame in a video to the corresponding depth oforigination of the cuttings. This mapping facilitates the association ofeach video frame with any other independently acquired data. Inexamples, the other independent acquired data is also depth-indexed. Atblock 216, picture scaling is applied to frames of video. In examples,the video frames are scaled to account for differences in the cameralens magnification and distance to the target sample being recorded. Thepicture scaling of video frames is similar to the standardizedmagnification applied to microscope images as described above. At block218, anti-aliasing is applied to multiple video frames. In examples, theanti-aliasing processing uses information from multiple contiguousframes to create a single sharp image.

In the image preprocessing workflow 220, image-to-wellbore depthindexing 222 is performed. In image-to-wellbore depth indexing 222,timestamps corresponding to each respective image are mapped to thedrilling bit depth. For example, images are natively indexed withrespect to a time at which the sample represented in the image reachesthe surface. The time at which the sample represented in the imagereaches the surface is used to determine a time-to-depth indexing thatis used to associate depth with predicted mineralogical orsedimentological data.

In both of the video preprocessing workflow 212 and image preprocessingworkflow 220, at block 224 image color histogram fit and matching isperformed. In the example of FIG. 2 , the image color histogram fit andmatching evaluates whether more than one light configuration is used fora single well. In examples, a light configuration refers to thecharacteristics of the light sources utilized when microscope imagesand/or video frames of rock drill cuttings are captured. If more thanone light configuration is used, then the best represented histogram(the one with the most images/frames taken) is used as a normalizationbasis for the other histograms within that same well. At block 226,image normalization is performed. In some embodiments, thisnormalization is performed on training datasets, at the model-buildingstage. In examples, a training dataset that includes more than one welland light configuration normalization is used for training data acrosswhole wells. A basis histogram is a best represented light configurationamong all wells used in the training dataset. In examples, the bestrepresented light configuration corresponds to a single well with themost samples. During model training and validation at the subsystem 230,the preprocessing subsystem 210 stores information about the averagecolor histogram of the set of pictures or video frames taken in anormalized images database at block 232. This information is utilized tonormalize the color distribution within the set. During model deploymentworkflow 250, newly acquired pictures are normalized at block 254according to this stored information in the normalized images database(e.g., block 232) from the training dataset. In this manner, rock drillcuttings representations input to the deployed, trained model sharecharacteristics with rock drill cuttings representations utilized totrain the model.

The model training and validation subsystem 230 is utilized to createmodels that encode how to map rock drill cuttings to specific prescribeddata of interest. As shown in FIG. 2 , the preprocessing system 210generates normalized images from the rock drill cuttings used as atraining dataset. The normalized images are stored in a database asshown at block 232. The model training and validation subsystem 230includes a custom unsupervised convolutional neural network (CNN) atblock 234 that is trained to segment and group individual rocks visiblein each picture or frame. The output of the unsupervised CNN at block234 is a masked version of the original images or video frames, whereeach pixel is given a label corresponding to a predicted classification.For example, when training a machine learning model to quantify theamount of sandstone, limestone and shale, the masked pictures includespixels labeled as sandstone rock, limestone rock, shale rock or none. Alabel of none signals a space between labeled categories (e.g., classes)or an unidentified category.

At block 236, the segmented pictures obtained from the unsupervised CNNat block 234 are utilized to train a machine learning model. In someembodiments, the machine learning model trained at block 236 is asupervised CNN. The supervised CNN learns to interpret the mineralogyand/or sedimentology of a large set of rock drill cuttings usingsegmented pictures from videos and/or images previously acquired. Inexamples, the input to the supervised CNN at block 236 is masked imagesbased on the original rock drill cuttings representations. The maskedimages include class labels of a rock type for each pixel. In examples,when training a machine learning model to quantify the amount ofsandstone, limestone and shale, the supervised CNN is trained(supervised) against the relative abundances of sandstone, limestone andshale measured (or derived from measurements) independently.

Accordingly, at block 240, mineralogical training data, such as wirelineX-ray fluorescence (XRF) and/or X-ray powder diffraction (XRD) areprovided as input for training of a supervised CNN. Mineralogy dataincludes, for example, the presence and relative abundance of certainminerals, such as sandstone, limestone, dolostone, shale, and the like.At block 242, sedimentological data is provided as input for training ofthe supervised CNN. Sedimentological data includes, for example, faciesdescriptions that characterize the presence and relative abundance ofgeological units of interest such as distal, proximal, shallow, or deep.

In some embodiments, the training data includes custom categories 244.Custom categories 244 include the presence and relative abundance ofpre-defined custom units of interest. For examples, custom categoriesinclude reservoir or non-reservoir classifications. Reservoir Engineersoften create classifications that are bespoke to the specific assetunder study, with arbitrary thresholds or labels that are notnecessarily are industry-wide standards, nor purely geology-based andtherefore cannot be described by any single Geologist. The presenttechniques train machine learning models to predict those custom bespokecategories. Following the example above, what constitutes a “reservoir”in a specific asset may be arbitrary and based on a joint evaluation ofengineering, geological and economic factors and therefore is not aproperty any single Geologist will be able to accurately interpret fromlooking at rock samples. The trained machine learning model recognizesthe subtle differences between these custom “reservoir” and“non-reservoir” labels because it is trained to do so.

At block 238, model validation and performance scoring is applied to theunsupervised CNN trained at block 234 and the supervised CNN trained atblock 236. The hyper-parameters of the unsupervised and supervisedcomponents of the workflow are automatically selected by iterativelyfitting a large number of models with different hyper-parameters andselecting the best using an appropriate loss function weighted from aset of cross-validations. The models are later tested against blind datasets using leave-k-wells-out cross-validation.

In some embodiments, the performance scoring is a measure of theaccuracy of the trained model predictions. In some embodiments, theperformance scoring is measured by sequentially setting aside a subgroupof images and labels that are not included in the training dataset, butused to test the performance of the model. This is done multiple timessetting aside randomly selected subgroups each time to avoid bias, atechnique referred to as cross-validation. The actual scoringmeasurement is obtained by testing the trained model against thesubgroup of images set aside and comparing its prediction to thecorresponding true label. The comparison is performed calculating themean squared error between the predicted and true relative abundanceslabels. A single mean squared error is obtained per each validation, thefinal score is the weighted average score of all cross-validations.

FIG. 3 shows model training 300 of the supervised CNN. In the example ofFIG. 3 , training images 302 are indexed according to depth 304. In someembodiments, the training and validation workflow 330 illustrated inFIG. 3 is implemented by model training and validation subsystem 230 ofFIG. 2 . The training workflow 330 is executed using the training images302 as input, and either continuous logging data 304 discrete loggingdata 306A, or discrete described data 306B as the output property to bepredicted. A large number of depth-indexed training data 302 is used totrain a machine learning model to predict two logging curves 304, whichcarry information on the relative abundance of two minerals, QuantityMineral 1 and Quantity Mineral 2. The same set of images 302 can also betrained to predict discrete described data 306B, such as geologicalfacies. In some embodiments, the training images 304 are segmentedpictures used to train a machine learning model to predict measured ormodeled data in the same wellbore in a supervised fashion. Asillustrated in FIG. 3 , the discrete logging data 306A and discretedescribed data 306B to be predicted is measured data or derived data. Inexamples, measured data is captured by a range of different sensors,tools and techniques. For example, measured data is classified as eitherwireline, Logging While Drilling (LWD), or core data. Wireline data isobtained once the wellbore has been drilled, by lowering sensors throughthe wellbore using a wireline. Logging While Drilling data is obtainedby attaching sensors to a drilling bottom hole assembly, and are thusobtained while the wellbore is being drilled. Core data is obtained by aseries of laboratory measurements performed over a core sample that is awhole rock sample cut from a specific depth interval. In someembodiments, derived data is data that is not directly measured, butthat is determined using the measured data. For example, watersaturation (e.g., the amount of water within the rock pore system) isoften not directly measured, but derived using an equation which usesmeasured data as input.

For increased performance, the machine learning models (e.g.,unsupervised CNN at block 234, supervised CNN at block 236 of FIG. 2 )are usually trained using training data from specific plays andreservoirs. In some embodiments, a custom CNN auto encoder (e.g.,unsupervised CNN at block 234) segments the rock drill cuttingsrepresentations in an unsupervised fashion, a process that identifiesindividual rocks within the picture and major rock types within it. Thesegmented pictures are trained to predict measured or modeled data in asame wellbore using a secondary CNN in a supervised fashion (e.g.,unsupervised CNN at block 234). The predicted or measured data can bedirect or derived data from wireline, Logging While Drilling or CoreData. In examples, the rock drill cuttings representations correspond toa depth interval of 5 to 10 feet of a drilled formation. In someembodiments, data sampled at a finer resolution is averaged using amoving window algorithm. By averaging using the moving window algorithm,rock drilling cuttings representations at a finer resolution are scaledto correspond to a same depth interval.

Referring again to FIG. 2 , the model training and validation subsystem230 outputs a first trained machine learning model that segments imagesof rock drill cuttings and a second trained machine learning model thatpredicts mineralogical data and sedimentological data, such as loggingcurves, discrete data, or derived data. In some embodiments, the trainedmachine learning models are stored in a model file, and the model fileis deployed for execution to make real time predictions.

The deployment workflow 250 executes the trained machine learning modelsto predict mineralogical data and sedimentological data. The deploymentworkflow 250 obtains newly acquired rock drill cuttings representationsat block 252. The newly acquired rock drill cuttings representations 252include videos and/or images obtained either statically or live. In someembodiments, the videos and/or images are obtained from an acquisitionsubsystem 110 (FIG. 1 ). The rock drill cuttings representations 252 arepre-processed using stored transformations. For example, newly acquiredpictures are normalized according to the stored information in thenormalized images databased at block 232 of the model training andvalidation workflow. The stored information includes the average colorhistogram of the set of pictures or video frames used to train themachine learning models.

At block 256, the trained machine learning models are used to predict adepth-indexed mineralogical and/or sedimentological interpretation ofrock drilling cuttings captured in the rock drill cuttingsrepresentations (videos and/or images). In some embodiments, thedeployment subsystem 250 obtains a model file produced by the trainingand validation subsystem 230. For example, during image preprocessing oftraining data using the image preprocessing subsystem 210, a set oftransformations are performed on the training raw images or video beforethe actual model training. In some embodiments, image preprocessingincudes scaling, histogram fit and image normalization. When the trainedmodels are applied to newly acquired images, the same transformationsdeveloped prior to training are applied to the newly acquired rawimages. For example, the parameters of those transformations applied tothe training dataset (scaling factor, color histogram, normalizationfactors) are stored for application to the newly acquired rock drillcuttings representations prior to prediction. At block 258, depthindexed mineralogical or sedimentological data is predicted using thetrained machine learning models and newly acquired rock drill cuttingsrepresentations. In some embodiments, custom categories of data arepredicted.

FIG. 4 shows a model deployment 400 of the trained machine learningmodels. In the example of FIG. 4 , input images 402 are indexedaccording to depth 404. The deployment workflow 450 illustrated in FIG.4 is the same to similar to the model training deployment 250 of FIG. 2. During deployment, new rock drill cuttings representations (e.g.,video frames or images) referred to as input images 402 are acquired ina first wellbore for which a relevant trained machine learning modelsexist. In some embodiments, relevant trained machine learning models aremodels trained using data captured from one or more other wellboresdrilled near the first wellbore (e.g., located in the same area, zone,or field). In some embodiments, relevant trained machine learning modelsare models trained using data captured from distant wells (e.g., notlocated in the same area, zone, or field), but where the targetgeological formations are believed to be similar. The trained machinelearning models can also be deployed in already drilled wells where rockdrill cuttings images are available, or where rock drill cuttings areavailable and new pictures are taken.

In any of these cases, new rock drill cuttings representations arepreprocessed following the same workflow described with respect to theimage preprocessing subsystem 210 of FIG. 2 . The deployment workflow450 is applied to the preprocessed input images 402. The trained machinelearning models predict continuous data 406, a discrete data 408, or anycombinations thereof. In examples, the trained machine learning modelspredict target variables, such as the custom categories (e.g., block 244of FIG. 2 ) used to train the machine learning models during thesupervised part of the workflow (e.g., block 236 of FIG. 2 ). Thepredicted variables can be either continuous data, such as mineralogicalabundance, or discrete variables, such as geological facies. In someembodiments, the deployment workflow 450 is executed in real time usingrock drill cuttings representations that are video frames obtained inreal time. In some embodiments, the deployment workflow 450 is executedin pseudo real time using rock drill cuttings representations that aremicroscope images taken while the new well is being drilled. Inexamples, pseudo real time refers to near real-time processing, with aminimal delay. Additionally, in some embodiments the rock drill cuttingsrepresentations are stored in a database and the deployment workflow 450is applied to the rock drill cuttings after the well has been drilled.

FIG. 5 shows a comparison of autonomous rock drill cuttingsinterpretation 502 and human interpretation 504. The depth interval 506shown spans 2560 feet, across which rock drill cuttings images wereacquired every 10 feet. The trained machine learning model was thereforedeployed and 256 images input to the trained machine learning model tooutput the interpretation 502. The training set was also sampled at 10feet and was composed of 245 images. In the example of FIG. 5 , themachine learning models are trained using measured wireline data. In theexample of FIG. 5 , the predictions of wireline data are made usingautonomous rock drill cuttings interpretation are output by a machinelearning model trained using a second Lateral (B) of a Well (X). Theautonomous drill cuttings interpretation 502 are predicted using machinelearning produced mineralogy. The human interpretation 504 illustrates ahuman created interpretation of the same rock drill cuttings samplesinput to the trained machine learning models. The trained machinelearning models interpret rock drill cuttings representations from afirst Lateral (A) of the same Well (X). In examples, the first Lateral(A) experiences well control difficulties, which prevents data frombeing acquired beyond the collection and digitalization of rock drillcuttings. The present techniques are utilized to build a model based ondata from the second Lateral (B) of the same Well (X). In someembodiments, training data from the second Lateral (B) of the same Well(X) includes both rock drill cuttings images and wireline data. Thetrained machine learning models are deployed and executed for dataavailable from the first lateral (A). As shown in FIG. 5 ,interpretation 502 made by the deployed trained machine learning modelsis more accurate than the human interpretation 504 of the cuttings. Inexamples, while autonomous rock drill cuttings interpretation 502 andhuman interpretation 504 are similar, the autonomous rock drill cuttingsinterpretation 502 is superior based on prior knowledge of the area. Forexample, the autonomous rock drill cuttings interpretation 502 moreaccurately describes the upper formation as not being composed of purelimestone; a known fact in the area. Moreover, in the example of FIG. 5the autonomous rock drill cuttings interpretation 502 resolves thelayered nature of the limestone/sandstone sequences.

Accordingly, the present techniques train high quality machine learningmodels in areas where both rock drill cuttings images and relevant data(wireline, LWD, core, etc.) are present. Interpretations from thetrained machine learning models save costs and consolidate multiple,differing, interpretations. In this manner, all rock drill cuttingsassets can be digitized and used to retroactively train and deploymodels. The present techniques do not require manual labelling of thetraining set. Further, the training datasets used are complex and do notrequire preparation, such as preparation applied to thin sectiondatasets. The preparation time and costs associated with thin sectionsfrom raw drill cuttings makes the use of thin sections in autonomousrock drill cuttings interpretation impractical for real time or nearreal time applications.

FIG. 6 is a process flow diagram of a process 600 that enablesautonomous rock drill cuttings interpretation. The present techniquesquantify mineralogical abundances in rock drill cuttings representations(video or images of rock drill cuttings) without the need of manuallabeling, but with the use of measured data, such as wireline, loggingwhile drilling, or core data.

At block 602, rock drill cuttings representations are obtained. In someembodiments, the rock drill cuttings representations are obtained usingan acquisition subsystem. The rock drill cuttings representations areimages or video recordings of rock drill cuttings. In some embodiments,the rock drill cuttings representations are obtained using a camera orother computer vision techniques. The present techniques predictmineralogical or sedimentological data using raw drill cuttings imagesor video.

At block 604, the rock drill cuttings representations are preprocessed.In some embodiments, the rock drill cuttings representations arepreprocessed using an image preprocessing subsystem 210. In examples, togenerate training data, rock drill cuttings representations arepre-processed using a respective video workflow (e.g., workflow 212 ofFIG. 2 ) or an image workflow (e.g., workflow 222 of FIG. 2 ). Inexamples, for input to deployed, trained machine learning models, newlyacquire rock drill cuttings representations (e.g., block 252 of FIG. 2 )are preprocessed using stored transformations. At block 606, the rockdrill cuttings representations are segmented into pictures that includea representative rock type. In some embodiments, the segmented picturesare masked images corresponding to the rock drill cuttings, where eachpixel is given a label corresponding to a predicted classification. Insome embodiments, the rock drill cuttings representations are segmentedusing a CNN trained using unsupervised learning.

At block 608, mineralogical data, sedimentological data, or anycombinations thereof are predicted using the segmented pictures. Themineralogical or sedimentological data is depth indexed. In someembodiments, the mineralogical or sedimentological data is predictedusing a CNN trained using supervised learning. For example, the labeledoutput of a first CNN trained using unsupervised learning to segmentrock drilling representations is used as input to a second CNN trainedto predict mineralogical or sedimentological data using supervisedlearning. In examples, the relative abundances of minerals is predictedfor each picture. In some embodiments, custom categories of data arepredicted.

By not using manual labeling, costs and time associated withinterpretations are reduced. For example, when a new built-for-purposemodel is created for a specific region, formation or predictor, then aset of highly qualified individuals need to assembled to work on a timeconsuming and repetitive task. The response time and cost of suchmethodology offsets any gain to be achieved by modifying the currentindustry practice. Additionally, the present techniques remove any biasfrom traditional, manual human interpretation. Moreover, the presenttechniques enable rock drill cuttings to be used to interpret themineralogy of the samples, and also continuous or discrete quantitiesrelated to the shape, color, texture and size of the cuttings produced.The present techniques predict modeled variables that are key tospecific assets, such as facies.

FIG. 7 is a schematic illustration of an example controller 700 (orcontrol system) for autonomous rock drill cuttings interpretationaccording to the present disclosure. For example, the controller 700 maybe operable according to the acquisition subsystem 100 of FIG. 1 or thesoftware subsystem of FIG. 2 . The controller 700 is intended to includevarious forms of digital computers, such as printed circuit boards(PCB), processors, digital circuitry, or otherwise parts of a system forautomated dew point pressure prediction. Additionally the system caninclude portable storage media, such as, Universal Serial Bus (USB)flash drives. For example, the USB flash drives may store operatingsystems and other applications. The USB flash drives can includeinput/output components, such as a wireless transmitter or USB connectorthat may be inserted into a USB port of another computing device.

The controller 700 includes a processor 710, a memory 720, a storagedevice 730, and an input/output interface 740 communicatively coupledwith input/output devices 760 (for example, displays, keyboards,measurement devices, sensors, valves, pumps). Each of the components710, 720, 730, and 740 are interconnected using a system bus 750. Theprocessor 710 is capable of processing instructions for execution withinthe controller 700. The processor may be designed using any of a numberof architectures. For example, the processor 710 may be a CISC (ComplexInstruction Set Computers) processor, a RISC (Reduced Instruction SetComputer) processor, or a MISC (Minimal Instruction Set Computer)processor.

In one implementation, the processor 710 is a single-threaded processor.In another implementation, the processor 710 is a multi-threadedprocessor. The processor 710 is capable of processing instructionsstored in the memory 720 or on the storage device 730 to displaygraphical information for a user interface via the input/outputinterface 740 at an input/output device 760.

The memory 720 stores information within the controller 700. In oneimplementation, the memory 720 is a computer-readable medium. In oneimplementation, the memory 720 is a volatile memory unit. In anotherimplementation, the memory 720 is a nonvolatile memory unit.

The storage device 730 is capable of providing mass storage for thecontroller 700. In one implementation, the storage device 730 is acomputer-readable medium. In various different implementations, thestorage device 730 may be a floppy disk device, a hard disk device, anoptical disk device, or a tape device.

The input/output interface 740 provides input/output operations for thecontroller 700. In one implementation, the input/output devices 760includes a keyboard and/or pointing device. In another implementation,the input/output devices 760 includes a display unit for displayinggraphical user interfaces.

There can be any number of controllers 700 associated with, or externalto, a computer system containing controller 700, with each controller700 communicating over a network. Further, the terms “client,” “user,”and other appropriate terminology can be used interchangeably, asappropriate, without departing from the scope of the present disclosure.Moreover, the present disclosure contemplates that many users can useone controller 700 and one user can use multiple controllers 700.

Implementations of the subject matter and the functional operationsdescribed in this specification can be implemented in digital electroniccircuitry, in tangibly embodied computer software or firmware, incomputer hardware, including the structures disclosed in thisspecification and their structural equivalents, or in combinations ofone or more of them. Software implementations of the described subjectmatter can be implemented as one or more computer programs. Eachcomputer program can include one or more modules of computer programinstructions encoded on a tangible, non-transitory, computer-readablecomputer-storage medium for execution by, or to control the operationof, data processing apparatus. Alternatively, or additionally, theprogram instructions can be encoded in/on an artificially generatedpropagated signal. The example, the signal can be a machine-generatedelectrical, optical, or electromagnetic signal that is generated toencode information for transmission to suitable receiver apparatus forexecution by a data processing apparatus. The computer-storage mediumcan be a machine-readable storage device, a machine-readable storagesubstrate, a random or serial access memory device, or a combination ofcomputer-storage mediums.

The terms “data processing apparatus,” “computer,” and “electroniccomputer device” (or equivalent as understood by one of ordinary skillin the art) refer to data processing hardware. For example, a dataprocessing apparatus can encompass all kinds of apparatus, devices, andmachines for processing data, including by way of example, aprogrammable processor, a computer, or multiple processors or computers.The apparatus can also include special purpose logic circuitryincluding, for example, a central processing unit (CPU), a fieldprogrammable gate array (FPGA), or an application specific integratedcircuit (ASIC). In some implementations, the data processing apparatusor special purpose logic circuitry (or a combination of the dataprocessing apparatus or special purpose logic circuitry) can behardware- or software-based (or a combination of both hardware- andsoftware-based). The apparatus can optionally include code that createsan execution environment for computer programs, for example, code thatconstitutes processor firmware, a protocol stack, a database managementsystem, an operating system, or a combination of execution environments.The present disclosure contemplates the use of data processingapparatuses with or without conventional operating systems, for example,LINUX, UNIX, WINDOWS, MAC OS, ANDROID, or IOS.

A computer program, which can also be referred to or described as aprogram, software, a software application, a module, a software module,a script, or code, can be written in any form of programming language.Programming languages can include, for example, compiled languages,interpreted languages, declarative languages, or procedural languages.Programs can be deployed in any form, including as stand-alone programs,modules, components, subroutines, or units for use in a computingenvironment. A computer program can, but need not, correspond to a filein a file system. A program can be stored in a portion of a file thatholds other programs or data, for example, one or more scripts stored ina markup language document, in a single file dedicated to the program inquestion, or in multiple coordinated files storing one or more modules,sub programs, or portions of code. A computer program can be deployedfor execution on one computer or on multiple computers that are located,for example, at one site or distributed across multiple sites that areinterconnected by a communication network. While portions of theprograms illustrated in the various figures may be shown as individualmodules that implement the various features and functionality throughvarious objects, methods, or processes, the programs can instead includea number of sub-modules, third-party services, components, andlibraries. Conversely, the features and functionality of variouscomponents can be combined into single components as appropriate.Thresholds used to make computational determinations can be statically,dynamically, or both statically and dynamically determined.

The methods, processes, or logic flows described in this specificationcan be performed by one or more programmable computers executing one ormore computer programs to perform functions by operating on input dataand generating output. The methods, processes, or logic flows can alsobe performed by, and apparatus can also be implemented as, specialpurpose logic circuitry, for example, a CPU, an FPGA, or an ASIC.

Computers suitable for the execution of a computer program can be basedon one or more of general and special purpose microprocessors and otherkinds of CPUs. The elements of a computer are a CPU for performing orexecuting instructions and one or more memory devices for storinginstructions and data. Generally, a CPU can receive instructions anddata from (and write data to) a memory. A computer can also include, orbe operatively coupled to, one or more mass storage devices for storingdata. In some implementations, a computer can receive data from, andtransfer data to, the mass storage devices including, for example,magnetic, magneto optical disks, or optical disks. Moreover, a computercan be embedded in another device, for example, a mobile telephone, apersonal digital assistant (PDA), a mobile audio or video player, a gameconsole, a global positioning system (GPS) receiver, or a portablestorage device such as a universal serial bus (USB) flash drive.

Computer readable media (transitory or non-transitory, as appropriate)suitable for storing computer program instructions and data can includeall forms of permanent/non-permanent and volatile/non-volatile memory,media, and memory devices. Computer readable media can include, forexample, semiconductor memory devices such as random access memory(RAM), read only memory (ROM), phase change memory (PRAM), static randomaccess memory (SRAM), dynamic random access memory (DRAM), erasableprogrammable read-only memory (EPROM), electrically erasableprogrammable read-only memory (EEPROM), and flash memory devices.Computer readable media can also include, for example, magnetic devicessuch as tape, cartridges, cassettes, and internal/removable disks.Computer readable media can also include magneto optical disks andoptical memory devices and technologies including, for example, digitalvideo disc (DVD), CD ROM, DVD+/−R, DVD-RAM, DVD-ROM, HD-DVD, and BLURAY.The memory can store various objects or data, including caches, classes,frameworks, applications, modules, backup data, jobs, web pages, webpage templates, data structures, database tables, repositories, anddynamic information. Types of objects and data stored in memory caninclude parameters, variables, algorithms, instructions, rules,constraints, and references. Additionally, the memory can include logs,policies, security or access data, and reporting files. The processorand the memory can be supplemented by, or incorporated in, specialpurpose logic circuitry.

Implementations of the subject matter described in the presentdisclosure can be implemented on a computer having a display device forproviding interaction with a user, including displaying information to(and receiving input from) the user. Types of display devices caninclude, for example, a cathode ray tube (CRT), a liquid crystal display(LCD), a light-emitting diode (LED), and a plasma monitor. Displaydevices can include a keyboard and pointing devices including, forexample, a mouse, a trackball, or a trackpad. User input can also beprovided to the computer through the use of a touchscreen, such as atablet computer surface with pressure sensitivity or a multi-touchscreen using capacitive or electric sensing. Other kinds of devices canbe used to provide for interaction with a user, including to receiveuser feedback including, for example, sensory feedback including visualfeedback, auditory feedback, or tactile feedback. Input from the usercan be received in the form of acoustic, speech, or tactile input. Inaddition, a computer can interact with a user by sending documents to,and receiving documents from, a device that is used by the user. Forexample, the computer can send web pages to a web browser on a user'sclient device in response to requests received from the web browser.

The term “graphical user interface,” or “GUI,” can be used in thesingular or the plural to describe one or more graphical user interfacesand each of the displays of a particular graphical user interface.Therefore, a GUI can represent any graphical user interface, including,but not limited to, a web browser, a touch screen, or a command lineinterface (CLI) that processes information and efficiently presents theinformation results to the user. In general, a GUI can include aplurality of user interface (UI) elements, some or all associated with aweb browser, such as interactive fields, pull-down lists, and buttons.These and other UI elements can be related to or represent the functionsof the web browser.

Implementations of the subject matter described in this specificationcan be implemented in a computing system that includes a back endcomponent, for example, as a data server, or that includes a middlewarecomponent, for example, an application server. Moreover, the computingsystem can include a front-end component, for example, a client computerhaving one or both of a graphical user interface or a Web browserthrough which a user can interact with the computer. The components ofthe system can be interconnected by any form or medium of wireline orwireless digital data communication (or a combination of datacommunication) in a communication network. Examples of communicationnetworks include a local area network (LAN), a radio access network(RAN), a metropolitan area network (MAN), a wide area network (WAN),Worldwide Interoperability for Microwave Access (WIMAX), a wirelesslocal area network (WLAN) (for example, using 802.11 a/b/g/n or 802.20or a combination of protocols), all or a portion of the Internet, or anyother communication system or systems at one or more locations (or acombination of communication networks). The network can communicatewith, for example, Internet Protocol (IP) packets, frame relay frames,asynchronous transfer mode (ATM) cells, voice, video, data, or acombination of communication types between network addresses.

The computing system can include clients and servers. A client andserver can generally be remote from each other and can typicallyinteract through a communication network. The relationship of client andserver can arise by virtue of computer programs running on therespective computers and having a client-server relationship. Clusterfile systems can be any file system type accessible from multipleservers for read and update. Locking or consistency tracking may not benecessary since the locking of exchange file system can be done atapplication layer. Furthermore, Unicode data files can be different fromnon-Unicode data files.

While this specification contains many specific implementation details,these should not be construed as limitations on the scope of what may beclaimed, but rather as descriptions of features that may be specific toparticular implementations. Certain features that are described in thisspecification in the context of separate implementations can also beimplemented, in combination, in a single implementation. Conversely,various features that are described in the context of a singleimplementation can also be implemented in multiple implementations,separately, or in any suitable sub-combination. Moreover, althoughpreviously described features may be described as acting in certaincombinations and even initially claimed as such, one or more featuresfrom a claimed combination can, in some cases, be excised from thecombination, and the claimed combination may be directed to asub-combination or variation of a sub-combination.

Particular implementations of the subject matter have been described.Other implementations, alterations, and permutations of the describedimplementations are within the scope of the following claims as will beapparent to those skilled in the art. While operations are depicted inthe drawings or claims in a particular order, this should not beunderstood as requiring that such operations be performed in theparticular order shown or in sequential order, or that all illustratedoperations be performed (some operations may be considered optional), toachieve desirable results. In certain circumstances, multitasking orparallel processing (or a combination of multitasking and parallelprocessing) may be advantageous and performed as deemed appropriate.

Moreover, the separation or integration of various system modules andcomponents in the previously described implementations should not beunderstood as requiring such separation or integration in allimplementations, and it should be understood that the described programcomponents and systems can generally be integrated together in a singlesoftware product or packaged into multiple software products.

Accordingly, the previously described example implementations do notdefine or constrain the present disclosure. Other changes,substitutions, and alterations are also possible without departing fromthe spirit and scope of the present disclosure.

Furthermore, any claimed implementation is considered to be applicableto at least a computer-implemented method; a non-transitory,computer-readable medium storing computer-readable instructions toperform the computer-implemented method; and a computer systemcomprising a computer memory interoperably coupled with a hardwareprocessor configured to perform the computer-implemented method or theinstructions stored on the non-transitory, computer-readable medium.

Particular embodiments of the subject matter have been described. Otherembodiments are within the scope of the following claims. For example,the actions recited in the claims can be performed in a different orderand still achieve desirable results. As one example, some processesdepicted in the accompanying figures do not necessarily require theparticular order shown, or sequential order, to achieve desirableresults.

What is claimed is:
 1. A computer-implemented method, comprising:obtaining, with one or more hardware processors, rock drill cuttingsrepresentations; preprocessing, with the one or more hardwareprocessors, the rock drill cuttings representations by applying at leastone transformation to the rock drill cuttings representations;segmenting, with the one or more hardware processors, the preprocessedrock drill cuttings representations into segmented pictures by inputtingthe preprocessed rock drill cuttings representations into a firstmachine learning model that outputs the segmented pictures, wherein thesegmented pictures are masked images that include at least one rocktype; and predicting, with the one or more hardware processors, depthindexed mineralogical or sedimentological data using the segmentedpictures input to a trained second machine learning model.
 2. Thecomputer implemented method of claim 1, wherein the second machinelearning model is trained to predict custom categories.
 3. The computerimplemented method of claim 1, wherein the first machine learning modelsegments and groups individual rocks visible in each picture or frameusing unsupervised learning.
 4. The computer implemented method of claim1, wherein the trained second machine learning model is a supervisedconvolutional neural network.
 5. The computer implemented method ofclaim 1, wherein the rock drill cuttings representations are ahigh-definition video of cleaned rock drill cuttings transported on acuttings belt from shakers.
 6. The computer implemented method of claim1, wherein the rock drill cuttings representations are images of cleanedrock drill cuttings transported on a cuttings belt from shakers.
 7. Thecomputer implemented method of claim 1, wherein the rock drill cuttingsrepresentations are microscope images of cleaned rock drill cuttingstransported on a cuttings belt from shakers.
 8. An apparatus comprisinga non-transitory, computer readable, storage medium that storesinstructions that, when executed by at least one processor, cause the atleast one processor to perform operations comprising: preprocessing rockdrill cuttings representations by applying at least one transformationto the rock drill cuttings representations; segmenting the preprocessedrock drill cuttings representations into segmented pictures by inputtingthe preprocessed rock drill cuttings representations into a firstmachine learning model that outputs segmented pictures, wherein thesegmented pictures are masked images that include at least one rocktype; and predicting depth indexed mineralogical or sedimentologicaldata using the segmented pictures input to a trained second machinelearning model.
 9. The apparatus of claim 8, wherein the second machinelearning model is trained to predict custom categories.
 10. Theapparatus of claim 8, wherein the first machine learning model segmentsand groups individual rocks visible in each picture or frame usingunsupervised learning.
 11. The apparatus of claim 8, wherein the trainedsecond machine learning model is a supervised convolutional neuralnetwork.
 12. The apparatus of claim 8, wherein the rock drill cuttingsrepresentations are a high-definition video of cleaned rock drillcuttings transported on a cuttings belt from shakers.
 13. The apparatusof claim 8, wherein the rock drill cuttings representations are imagesof cleaned rock drill cuttings transported on a cuttings belt fromshakers.
 14. The apparatus of claim 8, wherein the rock drill cuttingsrepresentations are microscope images of cleaned rock drill cuttingstransported on a cuttings belt from shakers.
 15. A system, comprising:one or more memory modules; one or more hardware processors communicablycoupled to the one or more memory modules, the one or more hardwareprocessors configured to execute instructions stored on the one or morememory models to perform operations comprising: preprocessing the rockdrill cuttings representations by applying at least one transformationto the rock drill cuttings representations; segmenting the preprocessedrock drill cuttings representations into segmented pictures by inputtingthe preprocessed rock drill cuttings representations into a firstmachine learning model that outputs segmented pictures, wherein thesegmented pictures are masked images that include at least one rocktype; and predicting depth indexed mineralogical or sedimentologicaldata using the segmented pictures input to a trained second machinelearning model.
 16. The system of claim 15, wherein the second machinelearning model is trained to predict custom categories.
 17. The systemof claim 15, wherein the first machine learning model is trained tosegment and group individual rocks visible in each picture or frameusing unsupervised learning.
 18. The system of claim 15, wherein thetrained second machine learning model is a supervised convolutionalneural network.
 19. The system of claim 15, wherein the rock drillcuttings representations are a high-definition video of cleaned rockdrill cuttings transported on a cuttings belt from shakers.
 20. Thesystem of claim 15, wherein the rock drill cuttings representations areimages of cleaned rock drill cuttings transported on a cuttings beltfrom shakers.